package www.bancodelanacion.intranet.prestamos.controlador;

import java.io.IOException;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;




import www.bancodelanacion.intranet.prestamos.entidad.RefinanciamientoDTO;
import www.bancodelanacion.intranet.prestamos.service.RefinanciamientoServiceImpl;



public class ServletRefinanciamiento extends HttpServlet {
	private static final long serialVersionUID = 1L;

	
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String metodo = request.getParameter("metodo");
		
		
		if (metodo.equals("inserta")) {
			insertaRefinanciamiento(request, response);
			//lista(request, response);
		}else if (metodo.equals("buscar")) {
			buscarRefinanciamientoDAO(request, response);
		}else if (metodo.equals("obtener")) {
			obtenerRefinanciamientoDAO(request, response);
		}else if (metodo.equals("actualizar")) {
			actualizar(request, response);
		}
	}
	

	protected void buscarRefinanciamientoDAO(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
		String codigo = request.getParameter("txtBuscar");
		String fecha = request.getParameter("idfecha");
		String estado = request.getParameter("select");
		String cliente = request.getParameter("txtBuscar");
		ArrayList<RefinanciamientoDTO> data=null;
		try {
			RefinanciamientoServiceImpl service= new RefinanciamientoServiceImpl();
			data=service.buscarRefinanciamientoDAO(codigo, fecha, estado, cliente);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.setAttribute("DATA", data);
		request.getRequestDispatcher("/BuscarSolRefinanciamiento.jsp").forward(request,response);
	}
	protected void obtenerRefinanciamientoDAO(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
		RefinanciamientoDTO refinanciamiento =null;
		try {
			RefinanciamientoServiceImpl service = new RefinanciamientoServiceImpl();
			refinanciamiento = service.obtenerRefinanciamientoDAO(request.getParameter("codigo"));
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.setAttribute("LISTAR", refinanciamiento);
		request.getRequestDispatcher("/MenuRefinCredito.jsp").forward(request, response);
	}
	protected void actualizar(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		RefinanciamientoDTO refinanciamiento = new RefinanciamientoDTO();
		
		//fecha
		
		refinanciamiento.setMontorefinanciamiento(request.getParameter("txtmonto"));
		refinanciamiento.setCuotarefinanciamiento(request.getParameter("txtcuotas"));
		//estado
		refinanciamiento.setCodigoestado(request.getParameter("idEstado"));
		refinanciamiento.setFechainiciorefinanciamiento(request.getParameter("idfecha"));
		refinanciamiento.setFechafinrefinanciamiento(request.getParameter("idfecprestamo"));
		
		refinanciamiento.setTasaointeresrefinanciamiento(request.getParameter("txttasa"));
		refinanciamiento.setPagomensualrefinanciamiento(request.getParameter("txtpagomensual"));
		refinanciamiento.setCodigorefinanciamiento(request.getParameter("txtcodigorefinanciamiento"));
		try {
			RefinanciamientoServiceImpl service = new RefinanciamientoServiceImpl();
			service.actualizaRefinanciamiento(refinanciamiento);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.getRequestDispatcher("/MenuRefinCredito.jsp").forward(request, response);
	}
	protected void insertaRefinanciamiento(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
		RefinanciamientoServiceImpl service = new RefinanciamientoServiceImpl();
		RefinanciamientoDTO bean = new RefinanciamientoDTO();
		String codigo=service.codigogen();
		//fecha
		bean.setCodigorefinanciamiento(codigo);
		bean.setFecha(request.getParameter("txtfecha"));
		bean.setMontorefinanciamiento(request.getParameter("txtmonto"));
		bean.setPagomensualrefinanciamiento(request.getParameter("txtpagomensual"));
		bean.setCuotarefinanciamiento(request.getParameter("txtcuota"));
		bean.setFechainiciorefinanciamiento(request.getParameter("txtfecha"));
		bean.setFechafinrefinanciamiento(request.getParameter("txtfechafin"));
		bean.setTasaointeresrefinanciamiento(request.getParameter("txttasa"));
		bean.setCodigocliente(request.getParameter("txtcodigocliente"));
		bean.setCodigoestado(request.getParameter("idEstado"));
		bean.setCodigotrabajador(request.getParameter("txtcodigotrabajador"));
		
		
		
		//estado
		
		
		
		
		try {
			
			service.insertaRefinanciamineto(bean);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.getRequestDispatcher("/MenuRefinCredito.jsp").forward(request, response);
	}
}
